« powrót

Konfiguracja IIS (Internet Information Server) i Tomcat 4.1

Opublikowano: 2009-07-28 , wyświetlono: 11281

Wstęp

Ostatnio musiałem zająć się serwisem tworzonym w oparciu o JSP i zacząłem poszukiwać rozwiązani, które umożliwiałoby testowanie servelt'ów i javabean's na lokalnym serwerze pracującym pod kontrolą Windows 2000. Rozwiązaniem jest darmowy serwer Tomcat dostępny pod adresem www.jakarta.apache.org.

Po ściągnięcie i zainstalowaniu serwer pracuje poprawnie co można sprawdzić wpisując w przeglądarce adres http://localhost:8080.

I t w zasadzie by już wystarczyło, swoje strony można testować używając adresów http://localhost:8080/mojasrtona.jsp. Wygodniej jest jednak zintegrować serwer Tomcat z IIS i posługiwać się adresem http://localhost/mojasrtona.jsp, pomijając numer portu.

Po poszukiwaniach w sieci i kilku próbach udało mi się tego dokonać i poniżej szczegółowa lista czynności, które należy wykonać by taka integracja stała się faktem.

1. Instalacja Tomcat'a

Ja zainstalowałem w domyślnej ścieżce jaką proponował instalator, czyli: C:\Program Files\Apache Group\Tomcat 4.1 co jak się okazało jest mniej wygodnym rozwiązaniem niż podanie krótszej ścieżki np. C:\Tomcat i w miarę możliości należy skorzystać z własnej ścieżki.

W dalszej części tekstu będę używał ścieżki, w której ja zainstalowałem serwer Tomcat, czyli: C:\Program Files\Apache Group\Tomcat 4.1 i wszystkie pliki konfiguracyjne i rejestrów będą odnośić się do tej ścieżki.

Pierwszym krokiem jest utworzenie dwóch dodatkowych plików (nie wiem dlaczego i się nad tym nie zastanawiałem tylko zrobiłem jak pisali) w katalogu C:\Program Files\Apache Group\Tomcat 4.1\conf.

Są to worker.properties oraz uriworkermap.properties i poniżej ich opis

Plik: worker.properties
Zmodyfikować należy dwie linie oznaczone w komentarzu. Reszty nie ruszałem.


#  ************  Begin  worker.properties  **************
worker.ajp13.type=ajp13

#
#  Specifies  the  load  balance  factor  when  used  with
#  a  load  balancing  worker.
#  Note:
#    ---->  lbfactor  must  be  >  0
#    ---->  Low  lbfactor  means  less  work  done  by  the  worker.
worker.ajp13.lbfactor=1

#
#  Specify  the  size  of  the  open  connection  cache.
#worker.ajp13.cachesize

#
#------  DEFAULT  LOAD  BALANCER  WORKER  DEFINITION  ----------------------
#---------------------------------------------------------------------
#

#
#  The  loadbalancer  (type  lb)  worker  perform  weighted  round-robin
#  load  balancing  with  sticky  sessions.
#  Note:
#    ---->  If  a  worker  dies,  the  load  balancer  will  check  its  state
#                once  in  a  while.  Until  then  all  work  is  redirected  to  peer
#                worker.
worker.loadbalancer.type=lb
worker.loadbalancer.balanced_workers=ajp13

#
#  worker.tomcat_home  should  point  to  the  location  where  you
#  installed  tomcat.  This  is  where  you  have  your  conf,  webapps  and  lib
#  directories.
#
#  !!!!!!!!!!!!!!  tu  należy  podać  ścieżkę  Tomcata  !!!!!!!!!!!!!!!!!
worker.tomcat_home=C:\Program  Files\Apache  Group\Tomcat  4.1\

#
#  worker.java_home  should  point  to  your  Java  installation.  Normally
#  you  should  have  a  bin  and  lib  directories  beneath  it.
#
#  !!!!!!!!!!!!!!  tu  jest  ścieżka  do  JDK  java  !!!!!!!!!!!!!!!!!!
worker.java_home=C:\JBuilder8\jdk1.4

#
#  You  should  configure  your  environment  slash...  ps=\  on  NT  and  /  on  UNIX
#  and  maybe  something  different  elsewhere.
#
ps=\

#
#------  ADVANCED  MODE  ------------------------------------------------
#---------------------------------------------------------------------
#

#
#------  DEFAULT  worker  list  ------------------------------------------
#---------------------------------------------------------------------
#
#  The  worker  that  your  plugins  should  create  and  work  with
worker.list=ajp13

#
#------  DEFAULT  ajp13  WORKER  DEFINITION  ------------------------------
#---------------------------------------------------------------------
#

#
#  Defining  a  worker  named  ajp13  and  of  type  ajp13
#  Note  that  the  name  and  the  type  do  not  have  to  match.
#
worker.ajp13.port=8009
worker.ajp13.host=localhost

#  ************  End  worker.properties  ************** 

Drugi plik jest krótszy i nie wymaga modyfikacji
Plik: uriworkermap.properties


#  ***********  Begin  uriworkermap.properties  ***
#
#  Simple  worker  configuration  file
#

#  Mount  the  Servlet  context  to  the  ajp13  worker
/servlet/*=ajp13

#  Mount  the  examples  context  to  the  ajp13  worker
/examples=ajp13
/examples/*=ajp13

#  Mount  the  examples  context  to  the  ajp13  worker
/doctera=ajp13
/doctera/*=ajp13
/uftps=ajp13
/uftps/*=ajp13

#  Mount  all  jsp  pages  to  the  ajp13  worker
/*.jsp=ajp13

#  Advanced  mount  of  the  examples  context
#  /examples/servlet/*=ajp13
#  *************  End  uriworkermap.properties  **** 

3. Zmiany w rejestrze

Dokonać należy również rejestru systemowego windows. Należy dodać nieistniejące klucze jak poniżej.


HKEY_LOCAL_MACHINE\SOFTWARE\Apache  Software  Foundation\Jakarta  Isapi  Redirector\1.0

Nazwa  klucza  wartość  klucza

extension_uri  /jakarta/isapi_redirect.dll
log_file  C:\\Program  Files\\Apache  Group\\Tomcat  4.1\\logs\\iis_redirect.log
log_level  emerg
worker_file  C:\\Program  Files\\Apache  Group\\Tomcat  4.1\\conf\\worker.properties
worker_mount_file  C:\\Program  Files\\Apache  Group\\Tomcat  4.1\\conf\\uriworkermap.properties 

i tu daje się zauważyć zalety instalacji Tomcat'a w lokalizaji c:\tomcat - po prostu w rejestrze są krótsze wpisy.

4. Dodanie filtru ISAPI

Ostatnim krokiem jaki należy uczynić jest dodanie filtru ISAPI do konfiguracji IIS'a. Najpierw należy pobrać plik isapi_redirector.dll i umieścić go w katalogu C:\Program Files\Apache Group\Tomcat 4.1\bin\win32 (folder win32 należy dodać). Dodanie filtru odbywa się w konsoli administracyjnej IIS'a, najczęściej w
Panel sterowania -> Narzędzia administracyjne -> Menedżer usług internetowych

Najpierw dodajemy wirtualny katalog z prawami uruchamiania skryptów o alias'ie /jakarta/
i ścieżce C:\Program Files\Apache Group\Tomcat 4.1\bin\win32, czyli lokalizacji
pliku isapi_redirector.dll.
Następnie wybierami właściwości dla domyślnej witryny Web i odnajdujemy zakładkę Filtry ISAPI. Dodajemy nowy filtr o nazwie Tomcat filter i jako plik wykonywalny podajemy
C:\Program Files\Apache Group\Tomcat 4.1\bin\win32\isapi_redirector.dll

5. Zakończenie

Teraz pozostaje tylko zatrzymać usługi Tomcat'a i IIS'a i ponownie uruchomić (najpierw usługa Tomcat'a).
Teraz możliwe jest wywołanie strony przez http://localhost/mojasrtona.jsp

Swoje aplikacje możemy umieszcząć w katalogu
C:\Program Files\Apache Group\Tomcat 4.1\webapps\ROOT

Pliki użyte w tekście można pobrać tutaj.

isapi_redirector.dll
worker.properties
uriworkermap.properties
tomcat_iis_connector.reg - plik rejestru


Data: 09-06-2004


Komentarze: